Rubinius is an implementation of the Ruby programming language.

The Rubinius bytecode virtual machine is written in C++, incorporating
LLVM to compile bytecode to machine code at runtime. The bytecode
compiler and vast majority of the core classes are written in pure Ruby.

To interact with the rest of the system, the VM provides primitives
which can be attached to methods and invoked. Additionally, FFI provides
a direct call path to most C functions.

Rubinius uses a precise, compacting, generational garbage collector. It
includes a compatible C-API for C extensions written for the standard
Ruby interpreter (often referred to as MRI.Matz's Ruby Implementation).
